School of Computer Science BCS accreditation 2021 - 2026
[Home]
Software Engineering MEng (Hons) - 2.1.1 Knowledge and understanding of facts, concepts, principles
Return to programme overview.
COMP10120 First Year Team Project
Enquiry based learning topics related to development of web based applications and group work.
Assesement : Individual coursework, Presentation, Lab work
Assesement : Individual coursework, Presentation, Lab work
COMP11120 Mathematical Techniques for Computer Science
It teaches areas of mathematics required for various fields of computer science in the form of the concept of proof, formal logic, probability, recursion and induction, relations, and linear algebra.
Assesement : Examination, Individual coursework
Assesement : Examination, Individual coursework
COMP11212 Fundamentals of Computation
The unit consists of two halves. The first introduces regular expressions, automata and grammars with an emphasis on the relationships between the formalisms and their use to solve problems. The second half uses a simple WHILE language to introduce the topics of complexity, correctness and computability.
Assesement : Examination, Individual coursework
Assesement : Examination, Individual coursework
COMP12111 Fundamentals of Computer Engineering
Covers basic logic design, combinatorial and sequential systems and processor design (memory, CPU and I.O.).
Assesement : Examination, Lab work
Assesement : Examination, Lab work
COMP13212 Data Science
This course is an introduction to data science, where data science refers to a set of concepts, techniques, and theories for extracting knowledge and information from data using computers.
Assesement : Examination, Lab work
Assesement : Examination, Lab work
COMP15111 Fundamentals of Computer Architecture
The course introduces the concepts involved in Fundamentals of Computer Architecture. Its aim is to enable the student to develop the skills required to comprehend Computer Systems, be they terminology, models, methodologies, structures (or topologies), timing, number representation and a general introduction to basic computer systems. Fundamental concepts are taught through lectures, example classes and labs
Assesement : Examination, Individual coursework
Assesement : Examination, Individual coursework
COMP15212 Operating Systems
Covers the architecture of principles of modern operating systems, including memory, processes, security, virtualisation, file systems. High level concepts cover abstraction, caching, hashing. Introduces the C programming language as a vehicle for exploring these concepts at OS level.
Assesement : Examination, Individual coursework
Assesement : Examination, Individual coursework
COMP16321 Introduction to Programming 1
This course is an introduction to programming the fundamental concepts surrounding this.
Assesement : Examination, Individual coursework, Lab work
Assesement : Examination, Individual coursework, Lab work
COMP16412 Introduction to Programming 2
We teach the general principles of object oriented programming including encapsulation, inheritance, polymorphism, abstraction, inner classes and interfaces, in addition to the particularities of the Java language such as the Java Collections Framework and JavaFX.
Assesement : Examination, Individual coursework, Lab work, Workshops
Assesement : Examination, Individual coursework, Lab work, Workshops
COMP23111 Database Systems
This unit teaches the core principles of databases and topics in and around this area.
Assesement : Examination, Individual coursework, Lab work
Assesement : Examination, Individual coursework, Lab work
COMP23311 Software Engineering 1
Building and testing large open source systems
Assesement : Examination, Individual coursework, Group coursework
Assesement : Examination, Individual coursework, Group coursework
COMP23412 Software Engineering 2
Students learn to build and maintain complex enterprise applications that follow established programming design patterns such as the Model View Controller (MVC). The theoretical principles of the MVC are put in practice on a widespread Web framework, ie Spring.
Assesement : Examination, Group coursework, Lab work
Assesement : Examination, Group coursework, Lab work
COMP26020 Programming Languages & Paradigms
The course unit covers essential knowledge, concepts, principles in relation to different aspects of programming languages, including different paradigms (eg, imperative vs declarative) as well as compilation techniques and current trends.
Assesement : Examination, Individual coursework, Lab work
Assesement : Examination, Individual coursework, Lab work
COMP26120 Algorithms and Data Structures
This course considers essential facts, concepts, principles and theories related to Algorithms and Data Structures, topics which are at the core of Computer Science. This includes theoretical tools include algorithmic complexity analysis and fundamental algorithmic design principles.
Assesement : Examination, Individual coursework, Lab work
Assesement : Examination, Individual coursework, Lab work
COMP28112 Distributed Systems
Facts, concepts, principles and theories are taught and discussed in class. Knowledge about these are tested as formative assessment and via coursework as summative assessment.
Assesement : Individual coursework, Lab work
Assesement : Individual coursework, Lab work
COMP30040 Third Year Project Laboratory
The knowledge gained during the programme is demonstrated by the student in executing the project
Assesement : Individual coursework
Assesement : Individual coursework